home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / lib / news / rn / filexp < prev    next >
Encoding:
Text File  |  1989-05-26  |  590 b   |  33 lines

  1. #!/bin/sh
  2. : expand filename
  3. case $1 in
  4. ~/*|~)
  5.     echo $1 | sed "s|~|${HOME-$LOGDIR}|"
  6.     ;;
  7. ~*)
  8.     if test -f /bin/csh; then
  9.     /bin/csh -f -c "glob $1"
  10.     echo ""
  11.     else
  12.     name=`expr x$1 : '..\([^/]*\)'`
  13.     dir=`sed </etc/passwd -n -e "/^${name}:/{s/^[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:\([^:]*\).*"'$'"/\1/" -e p -e q -e '}'`
  14.     if test ! -d "$dir"; then
  15.         me=`basename $0`
  16.         echo "$me: can't locate home directory for: $name" >&2
  17.         exit 1
  18.     fi
  19.     case $1 in
  20.     */*)
  21.         echo $dir/`expr x$1 : '..[^/]*/\(.*\)'`
  22.         ;;
  23.     *)
  24.         echo $dir
  25.         ;;
  26.     esac
  27.     fi
  28.     ;;
  29. *)
  30.     echo $1
  31.     ;;
  32. esac
  33.